Formal metatheory of second-order abstract syntax
نویسندگان
چکیده
Despite extensive research both on the theoretical and practical fronts, formalising, reasoning about, implementing languages with variable binding is still a daunting endeavour – repetitive boilerplate overly complicated metatheory of capture-avoiding substitution often get in way progressing to actually interesting properties language. Existing developments offer some relief, however at expense inconvenient error-prone term encodings lack formal foundations. We present mathematically-inspired language-formalisation framework implemented Agda. The system translates description syntax signature variable-binding operators into an intrinsically-encoded, inductive data type equipped syntactic operations such as weakening substitution, along their correctness properties. generated further incorporates metavariables associated operation metasubstitution, which enables second-order equational/rewriting reasoning. underlying mathematical foundation initial algebra semantics derives compositional interpretations models satisfying semantic lemma by construction.
منابع مشابه
Higher-order Abstract Syntax in Coq Higher-order Abstract Syntax in Coq
The terms of the simply-typed-calculus can be used to express the higher-order abstract syntax of objects such as logical formulas, proofs, and programs. Support for the manipulation of such objects is provided in several programming languages (e.g. Prolog, Elf). Such languages also provide embedded implication, a tool which is widely used for expressing hypothetical judgments in natural deduct...
متن کاملA Generic Formal Metatheory Framework for First-Order Representations
This paper presents GMETA: a generic framework for first-order representations of variable binding that provides once and for all many of the so-called infrastructure lemmas and definitions required in mechanizations of formal metatheory. The framework employs datatype-generic programming and modular programming techniques to provide a universe representing a family of datatypes. This universe ...
متن کاملGMeta: A Generic Formal Metatheory Framework for First-Order Representations
This paper presents GMeta: a generic framework for firstorder representations of variable binding that provides once and for all many of the so-called infrastructure lemmas and definitions required in mechanizations of formal metatheory. The key idea is to employ datatypegeneric programming (DGP) and modular programming techniques to deal with the infrastructure overhead. Using a generic univer...
متن کاملSemantical Analysis of Higher-Order Abstract Syntax
It is the aim of this paper to advocate the use of functor categories as a semantic foundation of higher-order abstract syntax (HOAS). By way of example, we will show how functor categories can be used for at least the following applications: relating first-order and higher-order abstract syntax (proofs of adequacy) without using reduction rules, justifying induction principles and other axioms...
متن کاملMechanized metatheory revisited (abstract)
Over a decade ago, the POPLmark challenge [2] suggested that the theorem proving community had tools that were close to being usable by programming language researchers to formally prove properties of their designs and implementations. The authors of the POPLmark challenge looked at existing practices and systems and urged the developers of proof assistants to make improvements to existing syst...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Proceedings of the ACM on programming languages
سال: 2022
ISSN: ['2475-1421']
DOI: https://doi.org/10.1145/3498715